package com.xl.utils.proxystudy.statics;

/**
 * @Author xionglin
 * @Classname ButtonProxy
 * @Description 代理类
 * @Date 2019/7/1 10:15
 */
public class ButtonProxy implements Function{
    /**
     * 持有目标代理对象实现的接口对应引用
     */
    private Function function;

    public ButtonProxy() {
    }

    public ButtonProxy(Function function) {
        this.function = function;
    }

    @Override
    public void click() {
        //调用权限校验方法
        validate();
        function.click();

    }

    /**
     * 校验权限功能
     */
    private void validate(){
        System.out.println("校验用户的权限是否合法");
    }
}
